/*
 * Scheduler.h
 *
 *  Created on: 2023年6月26日
 *      Author: Administrator
 */

#ifndef USER_SCHEDULER_H_
#define USER_SCHEDULER_H_

#include "type.h"

#define TICK_PER_SECOND 1000
#define TICK_US (1000000/TICK_PER_SECOND)

// 任务占用11Byte
typedef struct
{
    void (*task_func)(void);
    uint16_t rate_hz;
    uint16_t interval_ticks;
    uint32_t last_run;
} sched_task_t;//任务结构体

void SysTick_Handler(void);
void Scheduler_Setup(void);
void Scheduler_Run(void);
void Scheduler_Init(void);

#endif /* USER_SCHEDULER_H_ */
